$(function () {
//初始化下拉列表信息
    initdeparts();
    initXb();

    var yhdmUrl =  window.location.search.substring(1);
    var yhdm = yhdmUrl.substring(yhdmUrl.indexOf('=')+1,yhdmUrl.indexOf('&'));
    var methodUrl =  window.location.search.substring(1);
    var method = methodUrl.substring(methodUrl.lastIndexOf('=')+1);

    //根据URL来判断是查看还是新增还是更新请求
    if (method==="scan"){
       initScanForm(yhdm);
    }else if (method==="edit"){
        initEditForm(yhdm);
        $("#btn_submit").bind('click',function () {
            if (!checkForm()){
                return;
            }
            var data = getFormJson($("#addForm"));//$("#addForm").serializeToObject();
            console.log(data)
            var user = JSON.stringify(data)
            update(user);
        });
    }else {
        $("#btn_submit").bind('click',function () {
            if (!checkForm()){
                return;
            }
            //ajax非同步模式插入数据
            var data = getFormJson($("#addForm"));
            var user = JSON.stringify(data)
            insert(user);
        });
    }
});
/**
 * 退出按钮点击事件
 */
 $(function() {
	$("#btn_exit").bind('click',function(e) {
		window.close();
	})
});
// 对参数编码
function encodeStr(val) {
    return encodeURIComponent(encodeURIComponent(trim(val)));
}
// 去掉空格
function trim(value) {
    if (value){
        value = value.replace(/^\s*|\s*$/g, "");
    }
    if (!value){
        return "";
    }
    else{
        return value;
    }
}
Number.prototype.isInteger = function (global) {
    var floor = Math.floor,
        isFinite = global.isFinite;

    Object.defineProperty(Number, 'isInteger', {
        value: function isInteger(value) {
            return typeof value === 'number' &&
                isFinite(value) &&
                floor(value) === value;
        },
        configurable: true,
        enumerable: false,
        writable: true
    });
};
function checkForm() {
    var yhid = trim($("#yhid").val());
    var yhxm = trim($("#yhxm").val());
    var yhkl = trim($("#pwd1").val());
    var password2 = trim($("#pwd2").val());
    var yhxb = trim($("#yhxb").val());
    var csrq = trim($("#csrq").val());
    var bmdm = trim($("#bmdm").val());
    var pxh = trim($("#pxh").val());
    if (pxh==null||pxh==""){
        pxh=0;
    }
    var sfjy = trim($('[name="sfjy"]:checked').val());
    if (sfjy==null||sfjy==""){
        sfjy="1";
    }
    // 校验表单必填项是否填写
    if (yhxm==="") {
        alert("请输入用户名");
        return false;
    } else if(yhkl===""){
        alert("请输入口令");
        return false;
    }else if (yhkl!==password2) {
        alert("两次用户口令不一致，请重新输入");
        return false;
    }else if(yhid===""){
        alert("请输入ID");
        return false;
    }else if (!Number.isInteger(parseInt(pxh))){
        alert("排序号仅能为数字")
        return false;
    }
    return true;
}

function initdeparts() {
    $.ajax({
        url:"/departs",
        type:"GET",
        async:false,
        contentType: "application/x-www-form-urlencoded; charset=utf-8",
        success:function (data) {
            if (data.code == "success"){
                for (i=0;i<data.data.length;i++){
                    $("#bmdm").append('<option value="'+data.data[i].bmdm+'">'+data.data[i].bmmc+'</option>')
                }
            }else{
                alert(yhdm+"初始化失败！")
                window.close();
            }
        }
    })
}

function initXb() {
    $.ajax({
        url:"/bzdms",
        type:"GET",
        async:false,
        contentType: "application/x-www-form-urlencoded; charset=utf-8",
        success:function (data) {
            for (i=0;i<data.data.length;i++){
                $("#yhxb").append('<option value="'+data.data[i].code+'">'+data.data[i].mc+'</option>')
            }
        }
    })
}

function initScanForm(yhdm) {
    $.ajax({
        url:"/yhdmUser",
        type:"POST",
        async:false,
        contentType: "application/x-www-form-urlencoded; charset=utf-8",
        data:{
            yhdm:yhdm,
        },
        success:function (data) {
            if (data.code=="success"){
                $("#yhid").val(data.data.yhid);
                $("#yhxm").val(data.data.yhxm);
                $("#pwd1").hide();
                $("#pwd2").hide();
                $("#yhxb").val(data.data.yhxbCode);
                $("#csrq").val(data.data.csrq);
                $("#bmdm").val(data.data.yhbm);
                $("#pxh").val(data.data.pxh);
                $("#btn_submit").hide();

            }else{
                alert(yhdm+"初始化失败！")
                window.close();
            }
        }
    });
}

function initEditForm(yhdm) {
    $.ajax({
        url:"/yhdmUser",
        type:"POST",
        async:false,
        contentType: "application/x-www-form-urlencoded; charset=utf-8",
        data:{
            yhdm:yhdm,
        },
        success:function (data) {
            if (data.code=="success"){
                console.log(data.data);
                $("#yhid").val(data.data.yhid);
                $("#yhid").attr("readOnly",true);
                $("#yhxm").val(data.data.yhxm);
                if (data.data.yhxb==="男"){
                    $("#radionan").attr("checked",true);
                }else{
                    $("#radionv").attr("checked",true)
                }
                $("#csrq").val(data.data.csrq);
                $("#bmdm").val(data.data.yhbm);
                $("#pxh").val(data.data.pxh);

            }else{
                alert(yhdm+"初始化失败！")
                window.close();
            }
        }
    });
}
function insert(data) {
    $.ajax({
        url:"/insertUser",
        type:"POST",
        async:false,
        contentType: "application/x-www-form-urlencoded; charset=utf-8",
        data:{
            userJson:data
        },
        success:function (data) {
            if (data.code=="success"){
                alert("插入成功！")
            }else{
                alert("插入失败！")
            }
            window.close();
        }
    });
}
function update(data) {
    $.ajax({
        url:"/updateUser",
        type:"POST",
        async:false,
        contentType: "application/x-www-form-urlencoded; charset=utf-8",
        data:{
            userJson:data
        },
        success:function (data) {
            if (data.code=="success"){
                alert("更新成功！")
            }else{
                console.log(data.data);
                alert("更新失败！")
            }
            window.close();
        }
    });
}

function getFormJson(form) {
    var o = {};
    // var arry = $("#form1").serializeArray();//序列化表单
    // var obj = {};//分配内存空间
    // for (var i = 0; i < arry.length; i++) {//数据类型为"自定义类的字段名=数据"后台会自动对数据进行匹配
    //     obj[arry[i].name] = arry[i].value;
    // }
    var a = $(form).serializeArray();
    $.each(a, function () {
        if (o[this.name] !== undefined) {
            if (!o[this.name].push) {
                o[this.name] = [o[this.name]];
            }
            o[this.name].push(this.value || '');
        } else {
            o[this.name] = this.value || '';
        }
    });
    return JSON.stringify(o);
}